/*
 * @Description: 
 * @Author: zoe
 * @Date: 2024-09-10 14:38:09
 * @LastEditors: rendc
 * @LastEditTime: 2024-09-10 15:09:10
 */
// 时间类Duration-n具体要求如下：
// 1.包含属性hour、min、sec，都是int类型
// 2.提供无参构造器
// 3..提供构造器(三参)，对hour、min、sec进行初始化
// 4.提供构造器(一参)，参数含义：总秒数intseconds，对hour、min、sec进 行初始化，例如3661秒，转为a小时b分钟c秒，就是1小时1分钟1秒
// 5.提供每个属性的get方法
// 6.提供getTotalSeconds()方法，用于返回hour小时min分钟sec秒钟对应的总秒
// 数seconds
// 7.提供disp()方法，输出对象的属性信息和总秒数
public class Duration {
    //成员变量
    private int hour;
    private int min;
    private int sec;
    //无参构造器
    public Duration(){
        System.out.println("调用了Teacher无参构造器");
    }
    //三参构造器
    public Duration(int hour,int min,int sec){
        this.hour = hour;
        this.min = min;
        this.sec = sec;
        System.out.println("调用了Teacher三参构造器");
    }
    //一参构造器
    public Duration(int seconds){
        this.hour = seconds / 3600;
        this.min = (seconds %3600) / 60 ;
        this.sec = seconds % 3600 % 60;
        System.out.println("调用了Teacher一参构造器");
   }
   //get方法
   public int getHour(){
       return hour;
   }
   public int getMin(){
    return min;
   }
   public int getSec(){
    return sec;
   }
   //getTotalSeconds()方法，用于返回hour小时min分钟sec秒钟对应的总秒数seconds
   public int getTotalSeconds(){
       return hour * 3600 + min * 60 + sec;
   }
   //disp()方法，输出对象的属性信息和总秒数
   public void disp(){
       System.out.println("hour:" + hour + " min:" + min + " sec:" + sec + " seconds:" + getTotalSeconds());
   }
    
}